# 2、有一群猪(100-200之间)，如果分成4个猪一组，则多2个猪；若分成7个猪一组则多3个猪；若分成9
# 个猪一组，则多5个猪，试求出猪的总数
import random

# 3、假设一个游戏人物的体力值是3血，吃个桃加1血，刀减一血，剑减两血 经过这个数组["桃","桃","刀","桃","桃","剑"]之后，输出体力值是多少？

#
# 练习题：创建一个包含1到10的整数的列表。
# 练习题：编写一个程序，将列表中的每个元素乘以2，并输出结果。列表：[1, 2, 3, 4, 5]
# 练习题：编写一个程序，计算列表中所有偶数的和。列表：[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 练习题：编写一个程序，找出列表中的最大值和最小值。列表：[10, 20, 433, 40, 50,34,2,1]
# 练习题：编写一个程序，计算列表中元素的平均值。列表：[1, 2, 3, 4, 5]
# 练习题：编写一个程序，判断列表中是否存在某个元素。列表：[1, 2, 3, 4, 5]，判断元素：3 是否存在。




# 1、从键盘接收一个正整数n，如果n是偶数,n除以2，如果n是奇数，
# 则n=n+1.请问n经过多少次操作，可以变成1
n=12  #我们输入的值
count=0   #次数
while n!=1:
    if n%2==0:
        n/=2
        # a += 1
    else:
        n=n+1  #n+=1
        # a += 1
    count+=1







# 4、定义数组 arr = [2,6,8,9,10]从键盘接收n,
# 求前n个元素的和 n肯定小于等于数组的长度。比如n=3时，求2、6、8的和。
arr = [2,6,8,9,10]
n=3  # 从键盘接收的值
sum1=0
for a in range(n):
    sum1+=arr[a]
print(sum1)





# 5、从键盘输入10个数，将第2个与第6个交换，第4个与第8个交换，
# 输出原来的10个数，以及交换后的10个数
arr=[]
for a in range(10):
    # num=int(input("请输入一个数:"))
    num=random.randint(0,100)  #随机生成一个数
    arr.append(num)
print("交换前:",arr)
arr[1],arr[5],arr[3],arr[7]=arr[5],arr[1],arr[7],arr[3]

print("交换后:",arr)
# 6、打印数组中，最中间的数。比如数组有5个元素，
# 打印第3个元素。比如数组有6个元素，打印第3个和第4个元素
arr1 = [2,6,8,9,10,10]
index=len(arr1)//2
if len(arr1)%2==0:
    print(arr1[index-1],arr1[index])
else:
    print(arr1[index])

# 练习题：编写一个程序，将两个列表合并为一个列表，并去除重复元素。
# 列表1：[1, 2, 3] 列表2：[2, 3, 4]


# 练习题：编写一个程序，将列表中的所有偶数替换为它们的平方。
# 列表：[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list3=[1, 24, 3, 14, 12, 6, 7, 8, 9, 10]
for index in range(len(list3)):
    if list3[index]%2==0:
        list3[index]=list3[index]**2
print(list3)
# 第二种解法:
list4=[]
for e in list3:
    if e%2==0:
        list4.append(e**2)
    else:
        list4.append(e)